package com.example.resource_station_backend.exception;

import lombok.Getter;


/**
 * @Author xinhao
 * @Description 自定义业务异常
 * @CreateTime 2025-02-2025/2/23 20:25:26
 */
@Getter
public class BusinessException extends RuntimeException {

    /**
     * 错误码
     */
    private final int code;

    /**
     * 定义错误码和信息
     * @param code
     * @param message
     */
    public BusinessException(int code, String message) {
        super(message);
        this.code = code;
    }

    /**
     * 根据自定义错误码，读取错误码和信息
     * @param errorCode
     */
    public BusinessException(ErrorCode errorCode) {
        super(errorCode.getMessage());
        this.code = errorCode.getCode();
    }

    /**
     * 根据自定义错误码，同时自定义新的消息
     * @param errorCode
     * @param message
     */
    public BusinessException(ErrorCode errorCode, String message) {
        super(message);
        this.code = errorCode.getCode();
    }

}
